package co.yixiang.retail.biz.user.sevice;

import co.yixiang.common.mproot.common.service.BaseService;

import co.yixiang.retail.common.domain.YxSystemStore;
import co.yixiang.retail.common.domain.YxUser;
import co.yixiang.retail.common.dto.RyzUseIntegralDetailDto;
import co.yixiang.retail.common.dto.UserDto;
import co.yixiang.retail.common.dto.YxSystemStoreQueryCriteria;


import org.springframework.data.domain.Pageable;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

public interface YxSystemStoreService  extends BaseService<YxSystemStore> {


    List<YxSystemStore> selectList(String phone);

    Map<String,Object> queryByType(YxSystemStoreQueryCriteria criteria, Pageable pageable);

    YxSystemStore queryBalace(Integer id);

    YxUser checkCode(Map<String, String> code);

    void  updateSalesCode(Long uid,Integer storeId, BigDecimal money, RyzUseIntegralDetailDto ryzUseIntegralDetailDto);

    UserDto findByPhone(String phone);

    YxUser findUserById(Long id);

    void updatePass(Long id, String encryptPassword);

    /**更新门店的余额*/
    void updateMoney(BigDecimal payPrice, Long uid,BigDecimal oldPrice);

    /**获取门店的服务费*/
    BigDecimal findServiceCharge(Integer storId);

    /**门店充值中心 */
    Boolean recharge(Integer id);

    void updateBanlance(Long uid, BigDecimal extractPrice);

    BigDecimal queryStoreBalance(Long uid);
}
